package com.hust360.percent.pojo;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * orm 
 * 用户足迹的映射类
 * @author yangyang
 */

public class Dsc_usr implements Serializable {
	
	
	/**
	 * 
	 */
	private static final long serialVersionUID = -1529162803129871284L;

	public static final String TABLE = "dsc_usr";
	
	/**
	 * 足迹id
	 */
	public Long id;
	public static final String ID = "id";
	
	/**
	 * 打折信息的id
	 */
	public Long dscid;
	public static final String DSCID = "dscid";
	
	/**
	 * 用户的id
	 */
	public Long uid;
	public static final String UID = "uid";
	
	/**
	 * 列的名称的数组
	 */
	public static final String[] COLUMNS = {ID, UID, DSCID};
	
	/**
	 * 直接获得足迹信息的接口
	 * @author yangyang
	 */
	public interface Dsc_usrDAO {
		
		/**
		 * 通过足迹的id获得一个orm映射的对象，如果不存在，则返回null
		 * @param id
		 * @return
		 */
		public Dsc_usr findById(Long id);
		
		/**
		 * 根据用户的id获得一个足迹对象，如果不存在则返回null
		 * @param uid
		 * @return
		 */
		public Dsc_usr findByUsrId(Long uid);
		
		/**
		 * 通过一个discount对象的id获得一个足迹的对象
		 * 如果不存在，则返回null
		 * @param dscid
		 * @return
		 */
		public Dsc_usr findByDscid(Long dscid);
		
		/**
		 * 将一个Dsc_usr的orm映射对象持久化保存（写入数据库，或者发送给服务器处理)
		 * @param dsc_usr
		 */
		public void save(Dsc_usr dsc_usr);
		
		/**
		 * map的key是Dsc_usr的成员变量的名字，value即为对应的值
		 * 根据一个这样的map对象，获取一个Dsc_usr的列表
		 * @param map
		 * @return
		 */
		public List<Dsc_usr> findWithMap(Map<String, String>  map); 
		
		/**
		 * 根据一个key是成员变量名字，value是对应成员变量的值的map
		 * 返回数据库中是否存在这样一条记录
		 * @param map
		 * @return
		 */
		public boolean hasRelation(Map<String, String> map);
	}
}
